package pojo

// ShakeHandMessage 第一次建立ws连接需要客户端发送的信息
/*
	UserId 用户账号——用于确定唯一对应的ws连接
*/
type ShakeHandMessage struct {
	UserId string `json:"user_id"`
}

/*	ShakeHandMessage 测试数据
{
	"user_id":"1634208560"
}
*/

// TransMessage 传输的数据
/*
   	FromAccount 发送端用户账号
	ToAccount 接收端用户账号
	Message 发送的信息
*/
type TransMessage struct {
	FromAccount string `json:"from_account"`
	ToAccount   string `json:"to_account"`
	Message     string `json:"message"`
}

/* TransMessage 测试数据
{
    "from_account":"1634208560",
    "to_account":"429520hby",
	"message":"SB"
}
*/

// TransResponse 数据传输成功or失败的响应头
type TransResponse struct {
	Status  string `json:"status"`
	Code    int    `json:"code"`
	Message string `json:"message"`
}

// LoginMessage 登录时候传输的信息
type LoginMessage struct {
	PersonalName string            `json:"personal_name" gorm:"name;VARCHAR ( 20 ) NOT NULL"`
	UserID       string            `json:"user_id"`
	Friends      map[string]string `json:"friends"`
}

// AddFriendMessage 添加好友时的请求信息POST用
type AddFriendMessage struct {
	UserID string `json:"user_id"`
	GoalID string `json:"goal_id"`
}

// ShakeMessage 窗口抖动消息
type ShakeMessage struct {
	Type        string `json:"type"`
	FromAccount string `json:"from_account"`
	ToAccount   string `json:"to_account"`
}

// ForgetPasswordMessage 忘记密码消息
type ForgetPasswordMessage struct {
	UserID           string `json:"user_id"`
	Email            string `json:"email"`
	NewPassword      string `json:"new_password"`
	VerificationCode string `json:"verification_code"`
}
